Field of the Invention
Embodiments of the present invention generally relate to software interoperability and compatibility and, more particularly, to a method and apparatus for context-aware automatic zooming of a video sequence.
Description of the Related Art
Many video content editing software applications provide a timeline panel for viewing of a video sequence. A timeline view is typically a graphical representation in a horizontal panel of a user graphical interface for the editing software, showing one or more video clips that comprise the video sequence and their arrangement within the video sequence. For example, a horizontal timeline may be established, with each video clip being represented by a horizontal bar that provides a visual indication of the start and end points of each clip within a time axis. Each clip comprises a plurality of thumbnails, wherein each thumbnail represents a plurality of frames of a video clip. Further, a level of zoom may be selected at which to view the video sequence in the timeline panel. When the zoom decreases, the number of pixels per time increases, meaning a greater amount of a given video clip is represented in a single thumbnail.
A user may manipulate the video sequence within the timeline panel in order to trim (or shorten the duration of) a clip or reorder the clips within a sequence of clips. Typically, the trim operation is performed by selecting the rightmost edge of a horizontal bar in the timeline panel, representing the end of a selected clip, and then moving that edge left along the timeline to a desired new end of the clip. However, it is difficult to perform the trim operation precisely when the pixels per unit time along the timeline is high because a small amount of movement of the horizontal bar along the timeline results in a large number of frames in the clip to be trimmed. Currently, a user must manually select a larger zoom setting in order to more closely view the clip so as to provide more precision in trimming a clip.
Similarly, when reordering a clip within a sequence of clips, depending upon the selected zoom level, not all clips may be seen within the timeline. In this case, it is difficult to move a selected clip to a target location within the sequence, especially when the new location is not visible within the timeline. As the pixels per time increases, it is difficult to recognize the target location and a user may need to repeat the operation one or more times in order to properly reorder the video clips. This results in a poor user experience.
Therefore, there is a need for a method and apparatus for context-aware automatic zooming of a video sequence.